package com.twentyfour.dao;

import com.twentyfour.pojo.*;
import org.apache.ibatis.annotations.Param;
import org.omg.PortableServer.LIFESPAN_POLICY_ID;

import java.util.List;

public interface AdminMapper {
    //查询所有的管理员
    List<Admin> queryAllAdmin();

    //添加队伍
    int addTeam(Team team);

    //删除队伍
    int deleteTeam(@Param("account") Integer account);

    //更新队伍信息
    int updateTeam(Team team);

    //查询所有的代表队
    List<Team> queryAllTeam();

    //查询所有的裁判信息
    List<Referee> queryAllReferee();


    /*List<Athlete> queryAthletesByTeamAccount(Integer teamAccount);
    List<Coach> queryCoachByTeamAccount(Integer teamAccount);
    List<Doctor> queryDoctorByTeamAccount(Integer teamAccount);
    List<Referee> queryRefereeByTeamAccount(Integer teamAccount);*/

    //查询所有的项目
    List<Item> queryAllItems();

    //查询所有的比赛记录
    List<GameInformation> queryAllGameInformation();

    int updateGameInformation(GameInformation gameInformation);


    List<Referee_Item> queryAllRefereeByItemId(@Param("itemId") Integer itemId);
    List<GameInformation> queryAllGameInformationByItemId(@Param("itemId") Integer itemId);

    int addRefereeItem(Referee_Item referee_item);
    int deleteRefereeItem(Referee_Item referee_item);
    int addRefereeScore(RefereeScore refereeScore);
    int deleteRefereeScore(@Param("refereeId") Integer refereeId);

    List<RefereeScore> queryAllRefereeScore();

    int addPersonalItemFinalScore(PersonalItemFinalScore personalItemFinalScore);

    List<PersonalItemFinalScore> queryAllPersonalItemScore();

    List<TeamScore> queryAllTeamScore();

    /*List<GameInfo> queryAllGames();
    List<GameInformation> queryAllGameInfo();
    int updateGameInfo(GameInformation gameInformation);
    int deleteGame(@Param("id") Integer id);
    int addGame(GameInfo gameInfo);

    List<GameInformation> queryGameListByItemId(@Param("itemId") Integer itemId);

    int addItem(Item item);



    List<Athlete> queryAllAthleteByItemId(@Param("itemId") Integer itemId);

    int updateReferee(Referee referee);

    int addReferee(Referee_Item referee_item);
    int deleteReferee(@Param("refereeId") Integer refereeId);

    List<RefereeScore> queryRefereeScoreByRefereeId(@Param("refereeId") Integer refereeId);*/
}
